Any one development team may produce software for a myriad of platforms. A single solution may have deliverables on Windows®, Mac OSx®, Linux®, Android®, iOS®, Windows® Phone as well as web server hosted components developed in any number of languages. The languages used to create these solutions include C++, Objective C, C, C#, JavaScript®, Ruby®, Python®, and the like.
For the most part, each of these languages implements string localization differently. Win32® C++ uses a resource file (.rc) with an accompanying header file (.h) which handles enumeration. Objective C not only has a specific format, but also has an intricate directory structure dictated by the OS and others using both standardized or proprietary XML formats.
In addition to the format of the output, the string content itself is often programming language specific. In the past, if this particular string were to be implemented in multiple software deliverables that span multiple operating systems, it would not be uncommon for it to be written differently and subsequently translated for each implementation. Thus, the same string could be translated many times, but only include a small number of unique different strings.